package com.glory.cqaospda.bean


import com.google.gson.annotations.SerializedName
import java.io.Serializable

data class LotInfoBean(
    @SerializedName(value = "mCustomerDevice", alternate = ["CustomerDevice", "customerdevice"])
    var mCustomerDevice: String = "",
    @SerializedName(value = "mCustomerName", alternate = ["CustomerName", "customername"])
    var mCustomerName: String = "",

    @SerializedName(value = "mDateCode", alternate = ["DateCode", "datecode"])
    var mDateCode: String = "",
    @SerializedName(value = "mFactoryBDNo", alternate = ["FactoryBDNo", "factorybdno"])
    var mFactoryBDNo: String = "",

    @SerializedName(value = "mFactoryBDVer", alternate = ["FactoryBDVer", "factorybdver"])
    var mFactoryBDVer: String = "",
    @SerializedName(value = "mFactoryPackage", alternate = ["FactoryPackage", "factorypackage"])
    var mFactoryPackage: String = "",

    @SerializedName(value = "mGrade", alternate = ["Grade", "grade"])
    var mGrade: String = "",

    @SerializedName(value = "mInternalDevice", alternate = ["InternalDevice", "internaldevice"])
    var mInternalDevice: String = "",

    @SerializedName(value = "mIsResidue", alternate = ["IsResidue", "isresidue"])
    var mIsResidue: String = "",

    @SerializedName(value = "mIsRework", alternate = ["IsRework", "isrework"])
    var mIsRework: String = "",

    @SerializedName(value = "mItemName", alternate = ["ItemName", "itemname"])
    var mItemName: String = "",

    @SerializedName(value = "mLocation", alternate = ["Location", "location"])
    var mLocation: String = "",

    @SerializedName(value = "mLotClass", alternate = ["LotClass", "lotclass"])
    var mLotClass: String = "",

    @SerializedName(value = "mLotId", alternate = ["LotId", "lotid"])
    var mLotId: String = "",

    @SerializedName(value = "mLotQty", alternate = ["LotQty", "lotqty"])
    var mLotQty: String = "",

    @SerializedName(value = "mLotRelatedList", alternate = ["LotRelatedList", "lotrelatedlist"])
    var mLotRelatedList: List<Any>,

    @SerializedName(value = "mMarkingCode1", alternate = ["MarkingCode1", "markingcode1"])
    var mMarkingCode1: String = "",

    @SerializedName(value = "mMarkingCode2", alternate = ["MarkingCode2", "markingcode2"])
    var mMarkingCode2: String = "",

    @SerializedName(value = "mMarkingCode3", alternate = ["MarkingCode3", "markingcode3"])
    var mMarkingCode3: String = "",

    @SerializedName(value = "mPriority", alternate = ["Priority", "priority"])
    var mPriority: String = "",

    @SerializedName(value = "mProcessingStatus", alternate = ["ProcessingStatus", "processingstatus"])
    var mProcessingStatus: String = "",

    @SerializedName(value = "mProductType", alternate = ["ProductType", "producttype"])
    var mProductType: String = "",

    @SerializedName(value = "mSpecialProductType", alternate = ["SpecialProductType", "specialproducttype"])
    var mSpecialProductType: String = "",

    @SerializedName(value = "mSpecialProductTypeDesc", alternate = ["SpecialProductTypeDesc", "specialproducttypedesc"])
    var mSpecialProductTypeDesc: String = "",

    @SerializedName(value = "mStepDesc", alternate = ["stepdesc", "StepDesc"])
    var mStepDesc: String = "",

    @SerializedName(value = "mState", alternate = ["State", "state"])
    var mState: String = "",

    @SerializedName(value = "mStepName", alternate = ["StepName", "stepname"])
    var mStepName: String = "",

    @SerializedName(value = "mTestMode", alternate = ["TestMode", "testmode"])
    var mTestMode: String = "",

    @SerializedName(value = "mIsPassStation", alternate = ["IsPassStation", "ispassstation"])
    var mIsPassStation: String = "",

    var isLot: String = "",
    var batchLotType: String = "",

    @SerializedName(value = "mSubLotList", alternate = ["SubLotList", "sublotlist"])
    var mSubLotList: List<Sublotlist> = ArrayList()
):Serializable {
    data class Sublotlist(

        @SerializedName(value = "mSubLotID", alternate = ["SubLotID", "sublotid"])
        var mSubLotID: String = "",

        @SerializedName(value = "mSubLotPassNumber", alternate = ["SubLotPassNumber", "sublotpassnumber"])
        var mSubLotPassNumber: String = ""
    ):Serializable
}